package cc.rengu.oltp.service.common.dao;

import cc.rengu.oltp.service.common.entity.SrcTxnAuthCfg;
import cc.rengu.oltp.service.common.entity.SrcTxnExcpCfg;

/**
 * 渠道交易异常配置表操作接口
 * Created by 王成 on 2017/11/22.
 */
public interface SrcTxnExcpCfgMapper {
    /**
     * 根据交易码获取交易异常配置信息
     *
     * @param dbPoolCacheNodeName 数据库连池缓存节点名
     * @param instId              多法人机构标识
     * @param msgSrcId            源系统标识
     * @param txnNum              内部交易码
     * @param bizType             业务细分
     * @return 交易异常配置信息
     * @throws Exception 异常
     */
    SrcTxnExcpCfg loadSrcTxnExcpCfgByPrimaryKey(String dbPoolCacheNodeName, String instId, String msgSrcId, String txnNum, String bizType) throws Exception;

    /**
     * 根据交易码获取交易异常配置信息
     *
     * @param instId   多法人机构标识
     * @param msgSrcId 源系统标识
     * @param txnNum   内部交易码
     * @param bizType  业务细分
     * @return 交易异常配置信息
     * @throws Exception 异常
     */
    SrcTxnExcpCfg selectSrcTxnExcpCfgByPrimaryKey(String instId, String msgSrcId, String txnNum, String bizType) throws Exception;

    /**
     * 根据主键更新渠道交易异常配置信息
     *
     * @param srcTxnExcpCfg 渠道交易异常配置信息
     * @return 0-成功，其它-失败
     * @throws Exception 异常
     */
    int updateSrcTxnExcpCfgByPrimaryKey(SrcTxnExcpCfg srcTxnExcpCfg) throws Exception;

    /**
     * 登记渠道交易异常配置信息
     *
     * @param srcTxnExcpCfg 渠道交易异常配置信息
     * @return 0-成功，其它-失败
     * @throws Exception 异常
     */
    int insertSrcTxnExcpCfg(SrcTxnExcpCfg srcTxnExcpCfg) throws Exception;
}
